﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Blade.Compilation;
using System.IO;

namespace Blade.AotCompiler {
	public sealed class ElfLinker : LinkerBase {
		Stream elfFile;
		public ElfLinker(Stream elfFile, PlatformBase platform)
			: base(platform) {
			this.elfFile = elfFile;
		}

		protected override CodeStream CreateCodeStreamCore(IMethodBody method) {
			return new ElfCodeStream(
				elfFile,
				elfFile.Position,
				this,
				method
			);
		}
	}
}
